package com.bjsxt.controller;

import com.bjsxt.commons.pojo.BaizhanResult;
import com.bjsxt.pojo.TbItemParam;
import com.bjsxt.service.ItemParamService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;

/**
 * @author coder_z
 * @date 2023/2/7
 *
 * 商品规格参数模板接口
 **/
@RestController
@RequestMapping("/backend/itemParam")
public class ItemParamController {
    @Autowired
    private ItemParamService itemParamService;

    /**
     * 显示所有商品规格参数
     * @return
     */
    @GetMapping("/selectItemParamAll")
    public BaizhanResult show(){
         return itemParamService.selectAll();
    }

    /**
     * 判断商品分类是否已经添加过规格参数
     * @param itemCatId
     * @return
     */
    @GetMapping("/selectHaveParam")
    public BaizhanResult haveItemParam(long itemCatId){
        return itemParamService.haveItemParam(itemCatId);
    }

    /**
     * 新增商品规格参数
     * @param itemParam 页面参数数据
     * @return
     */
    @PostMapping("/insertItemParam")
    public BaizhanResult insert(TbItemParam itemParam){
        try {
            return itemParamService.insert(itemParam);
        } catch (Exception e) {
           e.printStackTrace();
           return BaizhanResult.error("服务器端消息-"+e.getMessage());
        }
    }

    /**
     * 规格参数删除接口
     * @param id
     * @return
     */
    @GetMapping("/deleteItemParamById")
    public BaizhanResult deleteById(long id){
        try {
            return itemParamService.deleteById(id);
        } catch (Exception e) {
            e.printStackTrace();
            return BaizhanResult.error("服务器端消息-"+e.getMessage());
        }
    }

    /**
     * 根据商品分类id查询商品参数模板信息
     * @param itemCatId
     * @return
     */
    @GetMapping("/selectItemParamByItemCatId/{itemCatId}")
    public BaizhanResult showItemParam(@PathVariable long itemCatId){
        return itemParamService.selectItemParamByItemCatId(itemCatId);
    }
}